package vip.xiaonuo.biz.modular.timetable.domain;

/**
 * A simple "lecture-of-students" abstraction. Defines the modules that the lecture is enrolled in.
 *
 */
public class Lecture {
    private final String lectureId;
    private final String lectureState;
    private final int lectureSize;
    private final int fromWeek;
    private final int toWeek;
    private final String roomType;
    private final int maxClassHour;
    private final String klassIds[];
    private final String moduleIds[];

    /**
     * Initialize Group
     *
     * @param lectureId
     * @param lectureState
     * @param lectureSize
     * @param fromWeek
     * @param toWeek
     * @param roomType
     * @param maxClassHour
     * @param klassIds
     * @param moduleIds
     */
    public Lecture(String lectureId, String lectureState, int lectureSize, int fromWeek, int toWeek, String roomType, int maxClassHour, String[] klassIds, String[] moduleIds){
        this.lectureId = lectureId;
        this.lectureState = lectureState;
        this.lectureSize = lectureSize;
        this.fromWeek = fromWeek;
        this.toWeek = toWeek;
        this.roomType = roomType;
        this.maxClassHour = maxClassHour;
        this.klassIds = klassIds;
        this.moduleIds = moduleIds;
    }
    
    /**
     * Get lectureId
     *
     * @return lectureId
     */
    public String getLectureId(){
        return this.lectureId;
    }

    public String getLectureState() {
        return this.lectureState;
    }

    /**
     * Get lectureSize
     * 
     * @return lectureSize
     */
    public int getLectureSize(){
        return this.lectureSize;
    }

    public int getFromWeek() {
        return fromWeek;
    }

    public int getToWeek() {
        return toWeek;
    }

    public String getRoomType() {
        return roomType;
    }

    public int getMaxClassHour() {
        return maxClassHour;
    }

    public String[] getKlassIds() {
        return klassIds;
    }

    /**
     * Get array of lecture's moduleIds
     *
     * @return moduleIds
     */
    public String[] getModuleIds(){
        return this.moduleIds;
    }
}
